package com.wang.service;

import com.wang.domain.TongueDiagnosis;
import com.baomidou.mybatisplus.extension.service.IService;
import com.wang.domain.TonguePicItem;
import com.wang.domain.enums.DiagnosisCoatedEnum;
import io.swagger.models.auth.In;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author WangZai
 * @since 2023-04-27
 */
public interface TongueDiagnosisService extends IService<TongueDiagnosis> {

    /**
     * 保存诊断结果
     * @param tongueDiagnosis
     * @return
     */
    boolean saveTongueDiagnosis(TongueDiagnosis tongueDiagnosis);
    /**
     * 通过id删除对象
     * @param tongueDiagnosisId
     * @return
     */
    boolean deleteTongueDiagnosisById(Integer tongueDiagnosisId);

    /**
     * 通过id获取对象
     * @param tongueDiagnosisId
     * @return
     */
    TongueDiagnosis getTongueDiagnosisById(Integer tongueDiagnosisId);

    /**
     * 查询诊断结果列表
     * @return
     */
    List<TongueDiagnosis> getTongueDiagnosisListByUserId(Integer userId);

    /**
     * 查询所有诊断结果列表
     * @return
     */
    List<TongueDiagnosis> getAllDiagnosis();

    /**
     * 获取对应舌苔的数量
     * @param coatedEnumCode
     * @return
     */
    Integer getCoatedNum(Integer coatedEnumCode);

    /**
     * 获取对应舌质的数量
     * @param colorEnumCode
     * @return
     */
    Integer getColorNum(Integer colorEnumCode);

    /**
     * 获取对应裂纹的数量
     * @param crackEnumCode
     * @return
     */
    Integer getCrackNum(Integer crackEnumCode);


    /**
     * 获取对应齿痕的数量
     * @param indentEnumCode
     * @return
     */
    Integer getIndentNum(Integer indentEnumCode);
}
